home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
BBS Toolkit
/
BBS Toolkit.iso
/
wildcat
/
hackdisp.zip
/
HACKDISP.DOC
< prev
next >
Wrap
Text File
|
1992-12-24
|
10KB
|
248 lines
================================================================================
HACKDISP v1.2 copyright 1992 by James L. Powers
A utility for converting
ANSI and Laughing Dog v1.0 files to WC 3.x @COLOR@ codes
and
WC! 3.x or ANSI display files to Laughing Dog v1.0
Brought to you by:
The Dead LEEEEEEECH! Society BBS & Mortuary
(614) 899-7839
2400-9600 baud 8N1
================================================================================
This program was written after laboriously hand-converting an ANSI file
that should have been a piece of cake for a well known free utility widely
available for WC! 3.x sysops.
HACKDISP is lazy. It works by letting DOS handle the ANSI conversion.
Your file is printed to the display and HACKDISP lifts the characters and
color attributes directly out of screen memory. ANSI.SYS or an equivalent
ANSI driver must be loaded. There is *NO* support for ANSI animation or
WC! v2.x or 1.x system codes.
HACKDISP will also convert from or to Laughing Dog v1.0 (copyright 1992,
Jeff Sloan) format if the file extension .DOG is found in the command
line. HACKDISP determines if the file is compressed or uncompressed by
examining the file length of a *.DOG file. Files exactly 4010 bytes in
length are considered to be uncompressed. Files under 4010 bytes in
length are assumed to be compressed. If the file is larger than 4010
bytes, HACKDISP will yell at you and terminate.
Support for LDOG files was originally intended for my own use, since I had
played around with LDOGRAB.EXE, Laughing Dog's excellent terminate and
stay resident (TSR) screen capture utility. Since LDOGRAB's output format
is a ten byte header and a simple memory dump, I saw no reason for keeping
LDOGRAB in memory if all I was doing was converting files that had already
been created.
Conversion of compressed files created by future versions of Laughing Dog
is not guaranteed.
In addition to converting files, HACKDISP will also allow you to view the
converted files in color or black and white.
A great deal of effort has been put into making HACKDISP produce the
smallest possible WC! v3.x equivalent of your ANSI or Laughing Dog
files. Although this will probably not help you save hard drive space, it
will help enhance Wildcat's performance when displaying @COLOR@ coded
screens, since HACKDISP's mission is to create a display file with as few
attribute changes as possible.
The output of HACKDISP can be used by WilDraw, but the preferred method is
the post-processing of TheDraw, ANSPAINT, or Laughing Dog files.
It is assumed WC! 3.x sysops will know where and when to use the system
codes necessary to pause or clear the display and will edit the output of
HACKDISP as required.
HACKDISP will only handle one screen (25, 43, or 50 lines) at a time. You
can specify the number of lines (1-50 depending on the current video mode)
to convert on the command line or convert the entire screen. If you
convert a screen while in 43 or 50 line mode but view it in 25 line mode,
HACKDISP will scroll the display. HACKDISP will refuse to run on monitors
with only 40 columns.
HACKDISP will neither convert nor display files larger than 65,535 bytes.
That's the breaks. Got one? I'd like to see it!
HACKDISP writes directly to screen memory during conversion, display, and
scrolling and may cause "snow" on some CGA systems.
HACKDISP will refuse to run on DOS versions less than 3.0, but I seriously
doubt that this will ever be a problem for anyone.
HACKDISP has been tested under DESQview and LANtastic and works well under
either environment. However, SHARE checking and file locking and
unlocking has not yet been implemented. Look for it in version 1.3!
HACKDISP is free for personal and non-business use.
================================================================================
================================================================================
Usage:
To convert ANSI files to WC! 3.x @COLOR@ codes:
HACKDISP [d:\path\] INPUT_FILE.EXT [d:\path\] OUTPUT_FILE.EXT [nn]
To convert Laughing Dog v1.0 files to WC! 3.x @COLOR@ codes:
HACKDISP [d:\path\] INPUT_FILE.DOG [d:\path\] OUTPUT_FILE.EXT [nn]
^^^
To convert ANSI or WC! 3.x files to Laughing Dog v1.0 format:
HACKDISP [d:\path\] INPUT_FILE.EXT [d:\path\] OUTPUT_FILE.DOG
^^^
To convert nn lines of the present screen to WC! 3.x @COLOR@ codes:
HACKDISP SCREEN [d:\path\] OUTPUTFILE.EXT [nn]
The value of nn is in the range 1-50 and will default to the maximum
number of screen lines if omitted. nn is disregarded if you are
converting to Laughing Dog format.
To view converted files in COLOR:
HACKDISP [d:\path\] FILENAME.EXT /C
To view converted files in B&W:
HACKDISP [d:\path\] FILENAME.EXT /M
================================================================================
================================================================================
If you experience any difficulty converting any ANSI or LDOG file, viewing
any converted file, or if you are experiencing strange results when a
converted file is displayed by Wildcat, please feel free to upload the
original ANSI or LDOG file and the file created by HACKDISP to the "Sysop
ONLY" file section of The Dead LEEEEEEEECH! Society BBS & Mortuary at
(614)899-7839 and the problem will be investigated. Please leave a
message indicating which Wildcat version you are using!
Remember that if your ANSI or LDOG screen uses all 80 columns, the local
Wildcat display may insert blank lines. Remote viewing will look fine.
It's best to use a maximum of 79 columns if you want things to look pretty
on both ends. Also, HACKDISP will display characters that Wildcat, some
modems, and many communications programs may not like. However, since
most ANSI drawing programs don't offer 90% of these characters, it
shouldn't be a problem.
Beware of ASCII 127! It is the "tiny house" or "delta" character () in
the IBM graphics character set, but it is hardwired in several
telecommunications packages as a backspace. Too bad. Nice little
character. At least all MSI products will display it.
Displaying a single "@" character is still a hassle. HACKDISP will always
display one correctly, but Wildcat gets horribly confused whenever it
encounters one. Avoid them like the plague and complain about it to MSI.
It's not my problem.
Please note that TOMCAT does an absolutely HORRID job converting @COLOR@
coded files back to ANSI. Don't be surprised if your HACKDISP'd
HELLOx.BBS screens get truncated when they finally make it into a QWK
packet. The folks at MSI should take a serious look at that subroutine
and FIX IT so we can all get on with the business of converting our
screens to this new format. 'Nuff said.
================================================================================
================================================================================
NEW in v1.2:
Added 43 line EGA and 50 line VGA support. Removed 40 column support,
which wasn't there in the first place!
Added Laughing Dog v1.0 file conversion and display support.
Added monochrome video support. Never had any complaints, but it was
always assumed that HACKDISP would be running on a color system. Since
HACKDISP reads and WRITES to screen memory at segments B800-BFFF during
the conversion and display processes, some users with monochrome systems
and TSRs loaded high in that area may have experienced system crashes
with v1.1 and 1.0, or at least really WEIRD looking output.
Stubborn background color at end of line cured! Wildcat evidently
expands a line that ends before the 80th column with spaces and the last
background attribute it encountered. HACKDISP's conversion and display
routines were modified to reflect this "feature" of Wildcat. Many thanks
to Bryan Henderson, sysop of Ironhead BBS (614-794-2646) for bringing
this to my attention!
Rewrote @COLOR@ display routine to access HACKDISP'd files in binary
mode. A real can of worms.
HACKDISP will no longer show @CLS@, @STOP@, @PAUSE@, @NOSTOP@, or
@NOPAUSE@ in display mode and will now honk at you when it encounters
@BELL@. All other system and user codes (as well as invalid codes of
your own invention surrounded by "@" characters) will be displayed.
Rewrote ANSI display routine so that it no longer depends on the internal
DOS command buffer.
Added input or output rejection based on file extension.
Added screen swapping, scrolling, and line clipping. Since HACKDISP now
saves and restores your screen, a two second pause after conversion was
added.
Added color & the famous DLS candelabra to default screen.
Rewrote HACKDISP.DOC!
Compiled under Borland C++ v3.1
================================================================================
NEW in v1.1:
Default @00@ screen attribute changed to @0F@ to ensure compatibility
with WilDraw v1.0 and others.
Extended internal DOS command buffer to allow for long path names.
Support for the lone "@" character was removed. According to MSI, this
will be fixed in future versions of Wildcat.
Screen rows now end at last non-space character or last space with
non-default attribute.
Fixed attribute bug that follows blank lines.
Program now creates tighter files.
Command line switch supports viewing converted files in color or
monochrome.
Source code no longer distributed with the executable file.